/* 插入排序 */
function insertionSort(nums) {
    // 外循环：已排序元素数量为 1, 2, ..., n
    for (let i = 1; i < nums.length; i++) {
        let base = nums[i], //第一个没有排序的下标
            j = i - 1; // 最后一个排序好的下标


        // 内循环：将 base 插入到已排序部分的正确位置
        while (j >= 0 && nums[j] > base) {
            // 当符合nums[j] > base
            // 说明,
            nums[j + 1] = nums[j]; // 将 nums[j] 向右移动一位
            j--;
        }
        nums[j + 1] = base; // 将 base 赋值到正确位置
    }
    return nums
}
insertionSort([4,2,3,1])